/*
 * livre.c
 *
 *  Created on: 11/04/2011
 *      Author: joao
 */

#include <stdio.h>
#include <stdlib.h>

#include "livre.h"

void inicializaListaLivre(){
	livre = NULL;
}

void extraiNo(No **p){
	if (livre == NULL){
		*p=(No *)malloc(sizeof(No));
		if(*p == NULL)
		overflow();
	}
	else{
		*p = livre;
		livre = livre ->prox;
	}
}

void devolveNo(No *p){
	p->prox=livre;
	livre = p;
}

void overflow(){
	fprintf(stderr, "Overflow!");
}

void underflow(){
	fprintf(stderr, "Underflow!");
}
